実行ファイル制御について
このセクション:
信頼できる所有権
ルールの突き合わせプロセス中、項目の所有権が、既定のルール構成で指定されている信頼できる所有者のリストと一致していることを確認するため、ファイルおよびフォルダに対して「信頼できる所有権」の確認が実行されます。
たとえば、実行するファイルと許可された項目との間で一致が検出された場合、追加のセキュリティ チェックが行われて、そのファイルの所有権が「信頼できる所有者」リストと一致していることも確認されます。 正規のファイルが改ざんされていたり、セキュリティ脅威であるファイルが名前を変えて許可されたファイルになりすましている場合でも、信頼できる所有権チェックにより、不正行為が特定され、ファイルの実行が防止されます。
ネットワーク フォルダ/共有は、既定では拒否されます。 したがって、ファイルがネットワーク フォルダ内にある場合は、そのファイルまたはフォルダを、許可された項目としてルールに追加する必要があります。 これを行わないと、ファイルが信頼できる所有権の確認にパスしたとしても、ルールによってアクセスが拒否されます。
ファイル署名が施された項目は偽造されることがないため、これらの項目に対しては、信頼できる所有権の確認は必要ありません。
既定で信頼される所有者は、次のとおりです。
- システム
- BUILTIN\Administrators
- %ComputerName%\Administrator
- NT Service\TrustedInstaller
つまり、既定では、アプリケーション制御 は BUILTIN\Administrators グループおよびローカル管理者が所有しているファイルを信頼します。 アプリケーション制御 は信頼できる所有者グループのルックアップは行いません。BUILTIN\Administrators のメンバーであるユーザは、既定では信頼されません。 その他のユーザについては、たとえ Administrators グループのメンバーであったとしても、信頼できる所有者になるように明示的に追加する必要があります。 上記のリストを拡張して、他のユーザまたはグループを含めることができます。
技術
アプリケーション制御 では、セキュア フィルタ ドライバと Microsoft NTFS セキュリティ ポリシーを使用して、あらゆる実行要求をインターセプトします。 実行要求は アプリケーション制御 フックを通過し、不要なアプリケーションはすべてブロックされます。 アプリケーションの資格はそのアプリケーションの所有権に基づき、既定の信頼できる所有権は、通常、管理者向けのものです。 この方式を使用することで、スクリプト記述やリスト管理を必要とせずに、最新のアプリケーション アクセス ポリシーが適用されます。 これを、信頼できる所有権と呼びます。 実行ファイルに加えて、アプリケーション制御 は、VBSスクリプト、バッチ ファイル、MSI パッケージ、レジストリ構成ファイルといった、アプリケーション コンテンツに対する資格付与も管理します。
信頼できる所有権は、アプリケーション制御 におけるアプリケーションへのアクセス制御のための既定の方式です。 随意アクセス制御 (DAC) モデルを使用しています。 これは、ファイルの owner 属性を調べ、定義済みの信頼できる所有者リストと突き合わせます。 ファイルの所有者がこのリスト内に見つかればファイルの実行が許可され、それ以外の場合は拒否されます。
このセキュリティ方式の重要な特徴の1つは、ファイルのコンテンツそのものは考慮しない能力です。 このように、アプリケーション制御 は既知のアプリケーションと不明なアプリケーションの両方を制御できます。 アンチウィルス アプリケーションなどの旧来のセキュリティ システムは、ファイルのパターンを既知のリスト内のそれと比較して、潜在的な脅威を特定します。 そのため、提供される保護レベルは、比較に使用されるリストの精度に正比例します。 マルウェア アプリケーションの多くが、まったく識別されないか、あるいは一定期間システムが無防備にさらされた後に特定されるのがせいぜいです。 アプリケーション制御は、既定では、実行ファイルの所有者が構成内の信頼できる所有者リストにリストされている場合は、ローカルにインストールされているその実行ファイルのすべてのコンテンツの実行を許可します。 したがって、管理者は、ローカル ディスク サブシステムから実行されないようにするアプリケーション (一般的には mmc.exe、eventvwr.exe、setup.exe などの管理アプリケーション) のリストを指定する必要があります。
このアプローチを取り入れると、アクセスの許可 / 拒否を所有権モデルが適宜行うため、管理者は、アプリケーション セットを機能させるために必要な実行コード1つ1つについて完全な詳細を調査する必要がありません。
実行可能スクリプト ベースのマルウェアがシステムに取り込まれるとすぐに アプリケーション制御 がこれを停止できるとはいえ、アプリケーション制御 は既存のマルウェア除去ツールの代替となることを目的としたものではなく、それらツールと併用しながら、補完的な技術として機能させるべきものです。 たとえば、アプリケーション制御 はウィルスの実行を停止することはできますが、ディスクからウィルスを駆除することはできません。
信頼できる所有権のルール
信頼できる所有権は、ログオン ユーザを考慮する必要がありません。 ログオンしたユーザが信頼できる所有者かどうか、あるいは管理者かどうかは問題になりません。 信頼できる所有権が問題にするのは、どのユーザ (またはグループ) がディスク上のファイルを所有しているかです。 これは通常、そのファイルを作成したユーザです。
グループ BUILTIN\Administrators が アプリケーション制御 コンソールにファイル所有者として表示されるのは、よくあることです。 このファイルの所有者が個別の管理者アカウントであることもあります。 結果として次のような状況になります。
- ファイル所有者はグループ BUILTIN\Administrators で、このグループは信頼できる所有者です。 信頼できる所有権により、ファイルを実行できます。
- ファイル所有者は個別管理者で、この個別管理者は信頼できる所有者です。 信頼できる所有権により、ファイルを実行できます。
- ファイル所有者は個別管理者で、この個別管理者は信頼できる所有者ではないが、BUILTIN\Administrators グループは信頼できる所有者です。 信頼できる所有権はこのファイルの実行を許可しません。
最後のケースでは、ファイルを所有している管理者は BUILTIN\Administrators グループに属しているにもかかわらず、このファイル所有者は信頼されません。 この個別所有者を信頼すべきかどうか調査するためにこのグループが拡張されることはありません。 この場合、このファイルの実行を許可するには、ファイルの所有権を、信頼できる所有者 (例: ドメインまたはローカル管理者) の所有権に変更する必要があります。
セキュリティ レベル
アプリケーション制御 ルールを使用して、セキュリティ レベルを設定することで、ルールに合致したユーザ、グループ、またはデバイスによる、許可されていないアプリケーションの実行要求について、その管理方法を指定できます。
自己権限付与
環境によっては、コンピュータに新しい実行ファイルを追加する必要のあるユーザがいます。たとえば、絶えず内部ソフトウェアの更新やテストを行う開発者や、新規アプリケーションまたは不明アプリケーションへのアクアスが必要になるパワー ユーザなどです。 自己承認を使用すると、任命されたパワー ユーザは、自分達がシステムに導入したアプリケーションを実行できるようになります。 これらのパワー ユーザは、オフィス外にいながら、IT サポートに頼ることなく、セキュリティ保護ありのエンドポイントにアプリケーションを追加できます。 これにより、隠れたマルウェアや実行ファイルに対しては高いレベルの防御を維持しつつ、開発チーム、パワー ユーザ、および管理者にとっては、ソフトウェアをインストールしてテストするための柔軟性が与えられます。
自己権限付与として構成されたユーザには、信頼できない実行ファイルの実行を許可するというオプションが、一度だけ、または現行セッション中であれば常に、または常に与えられます。 包括的監査に、アプリケーション名、実行日時、デバイスといった情報が詳述されます。 その上、アプリケーションのコピーを作成し、検査用として中央に保管できます。
許可された項目と拒否された項目
許可された項目
この許可リストによる方法では、オペレーティング システム上でユーザがそのアプリケーションに対して要求を行う前に、実行可能なすべてのコンテンツが1つ1つ事前定義されていることが求められます。 この方法で特定されるすべてのコンテンツの詳細が許可リストに保持され、実行要求が発生するたびにこのホワイトリストがチェックされる必要があります。 実行ファイルが許可リストに含まれていれば許可され、含まれていなければ拒否されます。
このような働きをするセキュリティ技術は少数ですが、実装後に求められる管理のレベルの問題を抱えることがよくあります。 これは、すべてのパッチ、製品レベル、およびアップグレードを許可リストに追加して、許可リストを維持する必要があるためです。
アプリケーション制御 では、この制御モデルを完全にサポートしており、このモデルでの追加のセキュリティを有効にするための重要なステップが加わっています。 こうした追加の1つは、SHA-1、SHA-256、Adler-32 といったデジタル署名を組み込む能力であり、これにより、アプリケーション名とファイル パスの合致が要求されるだけでなく、実行ファイルのデジタル署名とデータベース内の署名の合致も求められるようになります。 さらに、アプリケーション制御 は、実行ファイルの完全パスもリストに追加することで、:3つの項目すべてが合致してからアプリケーションが実行されるようにします。
ファイル名 - 例: winword.exe.
ファイル パス - 例: C:\Program Files\Microsoft Office\Office\digital signature
この技術を次の段階の制御に取り入れるため、アプリケーション制御 は、実行ファイルの詳細を取り込むだけでなく、特定の DLL ならびに実行可能な他のすべてのコンテンツ (ActiveX コントロール、Visual Basic スクリプト、コマンド スクリプトなど) を管理者が指定するように要求します。
アプリケーション制御 では、許可リストは許可された項目となります。許可された項目リストに含まれるのは、次のような項目です。
- ファイル
- フォルダ
- ドライブ
- ファイル ハッシュ
- ルール コレクション
拒否された項目
許可リストとは対照的に、拒否リストは潜在的に安全性の低い手段です。拒否の実行の対象となるアプリケーションが含まれているリストを作成して維持します。 これがこの手法の主な弱点です。 危険性のあるアプリケーションがすべて実際に判明していることが前提になるからです。 これは、電子メールやインターネットへのアクセスを利用する環境や、管理者の仲介なしにユーザがファイルやアプリケーションを導入できる環境では特にですが、ほとんどの企業で役に立ちません。
アプリケーション制御 では、インストールされていない、したがって管理者が所有しているアプリケーションはすべて、信頼できる所有権の使用により拒否されるため、拒否されたアプリケーションのリストを実際に維持する必要はありません。
拒否リストを使用してアプリケーションを禁止する主な理由の1つは、信頼できる所有権をライセンス管理で使用できるようにするためです。 既知の (したがって信頼され、所有されている) アプリケーションさえも実行が許可されないようにし、後で管理者が、特定のユーザ / グループまたはクライアントのルールを定義することによって、まさにそのアプリケーションへのアクセスを明示的に許可できるようになります。 この保護の場合、外のアプリケーションを許可すること以外、構成は不要です。 また、信頼できる所有者が所有する、セキュリティ リスクと見なされるファイルへのアクセスを拒否する場合にも、拒否リストは役立ちます。 たとえば、regedit.exe、ftp.exe などです。